package com.casstime.ec.cloud.discount.config;

import org.springframework.context.annotation.Bean; 
import org.springframework.context.annotation.Configuration;
import springfox.documentation.service.Contact; 
import springfox.documentation.builders.ApiInfoBuilder; 
import springfox.documentation.builders.PathSelectors; 
import springfox.documentation.builders.RequestHandlerSelectors; 
import springfox.documentation.service.ApiInfo; 
import springfox.documentation.spi.DocumentationType; 
import springfox.documentation.spring.web.plugins.Docket; 
import springfox.documentation.swagger2.annotations.EnableSwagger2;

/**
 * ClassName: Swagger2Config 
 * Function: (提供API文档页基本信息)
 * Reason: ADD REASON(可选).
 *  
 * @author wu.chen 
 * 2018年4月18日 下午2:40:18
 * @version   
 * @since JDK 1.8
 */
@Configuration 
@EnableSwagger2 
public class Swagger2Config { 
	//swagger2的配置文件，这里可以配置swagger2的一些基本的内容，比如扫描的包等等 
@Bean 
	public Docket createRestApi() {
		return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select()
				// 为当前包路径
				.apis(RequestHandlerSelectors.basePackage("com.casstime.ec.cloud.discount.restful")).paths(PathSelectors.any()).build();
	}

	//构建 api文档的详细信息函数,注意这里的注解引用的是哪个 
	private ApiInfo apiInfo() {
		return new ApiInfoBuilder().title("商家优惠服务 RESTful API")
				.contact(new Contact("chenwu", "http://www.casstime.com", "wu.chen@casstime"))
				.version("1.0").description("商家优惠相关接口").build();
	}

}